﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace UAXInversionesWeb.cliente
{
    public partial class RetirarDinero : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if(HttpContext.Current.Session["identificador"] != null)
            {
                int saldoDisp = (int)Proxy.consultarSaldo((int)HttpContext.Current.Session["identificador"]);
                liqidezDisp.Text = saldoDisp.ToString("N") + " €";
                cantidadRangeValidator.MaximumValue = saldoDisp.ToString();
                cantidadRangeValidator.ErrorMessage = "Retirada entre 100,00€ y " + saldoDisp.ToString("N") + "€";
            }
        }

        protected void retirarButton_Click(object sender, EventArgs e)
        {
            int idcliente = (int)HttpContext.Current.Session["identificador"];

            string cipherPassword = RijndaelSimple.Encrypt(confirmText.Text, "Pas5pr@se", "s@1tValue",
                                                        "SHA1", 2, "@1B2c3D4e5F6g7H8", 256);

            
            if (Proxy.comprobarPassword(idcliente, cipherPassword))
            {
               
                double disponible = Proxy.consultarSaldo(idcliente);
                int aRetirar = Int32.Parse(caRetirar.Text);// 0;//int.Parse(caRetirar.Text);
               
                bool retiradaRealizada = Proxy.realizarRetirada(idcliente, aRetirar);

                if (retiradaRealizada)
                {
                    liqidezDisp.Text = Proxy.consultarSaldo(idcliente).ToString("N") + " €";
                    caRetirar.Text = "";
                    Response.Write("<script>alert('Dinero transferido " + aRetirar.ToString("N") + " € con éxito a su cuenta particular.')</script>");
                }
                else
                {
                    Response.Write("<script>alert('Error al conectar con el banco.')</script>");
                }
               
            }
            else
            {
                // error, no especificó su password
                Response.Write("<script>alert('Por favor, introduzca su contraseña correctamente para realizar la operación.')</script>");
            }
        }
    }
}
